This invention relates to information storage and retrieval systems.
Distinguishing the present invention from the prior art there are certain characteristics that are generally applicable to prior art information storage and retrieval systems in existence today. These features are as follows:
1. As the size of a stored data base increases, the average time required to retrieve data therefrom increases.
2. Data compressed in a storage and retrieval system must be expanded before it can be operated on.
3. If another element is added to a data base (for example, a record is added to a file), the amount of space required to store the updated base always increases.
4. Some inquiries will be rejected by a retrieval system because they are not stated or formated correctly.
5. As the size of a random access data base increases, the efficiency of storage decreases (due to the requirements for indexing tables, pointers, etc.).
An embodiment of the present invention does not have any of the above features.
An embodiment of the present invention involves a method and apparatus of restructuring digital information to produce iso-entropicgrams and seeds. Iso-entropicgrams and seeds are defined hereinafter. To be explained in more detail, a seed is an optimum way of representing a particular piece of information with minimum storage. Stored information is retrieved, not by searching the data base, but by a generation process. During the generation process a data request, along with stored iso-entropicgram seeds, are fed as parameters to an output generator.
In summary, some of the advantages gained from using the techniques according to the present invention may be achieved as follows: (1) less physical storage is required, (2) fast retrieval time, (3) ease of restructuring and updating a data base, (4) ease of specifying a new retrieval criteria, and (5) ease of specifying and carrying out a process.
The information storage and retrieval system described in the present patent application is a new class of machine, based on an entirely new technology. Since it is based on a new technology, a new word has been coined to describe this technology, the word being "holotropic".
The holotropic information storage and retrieval system is not based upon a new component nor merely upon a rearrangement of existing components, but instead is based upon new methods and apparatus for building a whole new class of information processing machines.
Some superficial similarities will be found between presently available techniques and the class of new machines disclosed herein. However, the differences are much more significant than the similarities, making it awkward to describe the new technology in existing terms. For example, one aspect of the invention resembles holography in the sense that information pertaining to an item is not stored in one place. However, to use the word "holograhic" to describe this new technology would convey the totally incorrect impression that it is optical in nature and, at the same time, the term fails to refer to this technology's other characteristics. By way of further example, this aspect of the invention may behave in some respects like an associative memory. However, here again, the differences outweigh the similarities and the use of a descriptor like "associative" generates more confusion that it does clarification. For this reason, the term holotropic is used to identify the technology involved.
One application of the holotropic method and apparatus is for information storage and retrieval. However, in describing the functioning of a holotropic memory system, care must be taken in using the terms used for previous techniques. The mechanisms by which holotropic memory systems store and retrieve information are totally different from the mechanisms associated with terms like "search", "scan", "match", "point", "link", or "thread". Thus, according to an embodiment of the present invention, instead of searching for the presence of stored data on the basis of matching an inquiry, the holotropic memory system uses the inquiry to invoke parameters which define both the applicable pieces and any relations between these pieces and the rest of the information. Those parameters then produce the information requested in the inquiry, not by reading it out of storage, but by recomposing it. In a holotropic memory system, the information itself is not found, it is generated.
From the user's point of view, there are two characteristics of holotropic techniques which profoundly change conventional modes of dealing with an information storage and retrieval system. One characteristic concerns the absence of the need for descriptors, and another concerns file compression.
Attention will now be directed to descriptors and exactness as it applies to an embodiment of the present invention. The data which is to be entered into the holotropic system for later retrieval need not be categorized, indexed, described, or even formated for the purpose of retrieval. Should the user wish to set up a structure of categories containing descriptors or indices because it makes it easier for him, he may of course do so. An important distinction here is that a holotropic memory system never imposes such structures upon the process. Even though the holotropic memory system can accommodate such structures, it does not require them.
The same flexibilities characterize the making of inquiries of a holotropic memory system. The inquirer can simply ask questions in whatever form, using whatever words occur to him. Usually the person attempting to use an information storage and retrieval system has no trouble stating his inquiry in such a way that he understands it, and in such a way that other people understand it. The difficulty arises when he tries to translate his inquiry into an equivalent question which meets the acceptance requirements imposed by conventional information storage and retrieval systems.
By prior information storage and retrieval systems, limits have to be set on the inquiry process. Since a holotropic memory system does not impose any requirements on the inquiry process, necessary control is vested where it belongs, namely, with the user. The most important control the user exercises concerns the degree of exactness of the match between his inquiry and the contents of the data base. The maximum setting on his "degree of exactness" control would be that for an exact match. Should an exact match not be found, the holotropic memory system enables it to tell the user that the situation exists and indicates that change must be made in the exactness setting so that the inquiry will retrieve at least one relevant item.
The exactness control setting has no effect whatsoever on the search time of the holotropic memory system. However, since it indirectly controls the amount of data retrieved, it does affect the total respone time in the sense that more retrieved data will take longer to display in print.
Because of the differences in the techniques of the inquiry process in traditional and in holotropic information storage and retrieval systems, the structure of the latter may be vastly different. In traditional retrieval information storage and retrieval systems, an inquiry can be rejected because it contains an unallowable descriptor, or because something is misspelled, or because the parts are ordered improperly, or because the inquiry is not framed according to the specifications. Thus, an inquiry can be rejected regardless of whether the information it asked for is actually in the data base. In a holotropic data storage and retrieval system, no inquiry need ever be rejected for such reasons. The only sense in which an inquiry needs to be "rejected" at all by a holotropic information storage and retrieval system is that it fails to retrieve. In other words, the data base does not contain anything which matches the inquiry at the specified level of exactness. If this happens, the user is told whether or not a change in exactness will retrieve an item, and if so, the setting.
Another consideration for holotropic information storage and retrieval method and apparatus is file compression. The nature of the holotropic system is such that the stored data is compressed into less space than would be used to store the data with presently available techniques. This is true even if it were entered as a linear string, that is, as a single record. The degree to which any particular data sample is compressed in a holotropic system is a function of two independent processes.
The first process is fairly easily described, and its effects are relatively predictable. The holotropic storage and retrieval system compresses input data by automatically taking advantage of any redundancy. In one test, a 10,000-word sample of ordinary English prose was compressed to approximately one-half the space which would have been required had the sample (without any index tables, pointers, or other artifacts) been stored as a single record in a traditional information storage and retrieval system. The exploitation of these redundancies occurs at all levels. Once a character, a word, a sentence, a paragraph, or any other arbitrarily specified input element has been encountered, no subsequent occurrences of that same element need be stored in their original form. Instead, the holotropic system notes that a previously encountered element has occurred again, in a manner which permits reconstitution of any or every one of the multiple input elements in its original context.
The second process contributing to data compression in a holotropic memory system is more difficult to predict. It is more difficult to predict as it is a function of the relatedness of elements which are part of a data base.
As each new input element is added to the data base, it is automatically correlated with every other appropriate element already stored. Since this process operates on the data base in its compressed form, it does not adversely affect storage time. One possible result of this correlation is that the content and structure of a new input element may reveal a relationship between itself and a number of already stored elements which permits all of the related elements to be treated as a single entity and stored together. Thus, a number of elements which at one time were stored separately, can be collapsed on the basis if their relationship with a subsequent input element, with results that the updated file can require less total storage space than it did prior to the addition of the new input element.
Another characteristic which is also very different in a holotropic system from traditional information storage and retrieval systems is that in a holotropic system both the degree of compression and the relative speed of retrieval may increase as the size of the data base increases.
A derivative feature of compression in a holotropic system is that certain processing or manipulation of the stored data is done in its compressed form, thus permitting higher processing speeds than systems which must first expand the data.
Although the above discussion has been directed primarily to holotropic information storage and retrieval systems, specific holotropic method and apparatus techniques may be applied in other areas.
One area is in digital communications, where band width limitations place an upper bound on speed of transmission. Here, a holotropic system can be used to encode the digitized data, and the speed of transmission of any message will be increased as a function of the degree of compression as discussed with respect to information storage and retrieval applications. It is important to remember that the information thus compressed and transmitted can represent anything whatsoever, from a payroll file to a digitized pictorial image. Significantly, other systems can be used to efficiently compress and transmit data. However, one thing which makes the holotropic approach unique is that, since holotropic compression is a function of the redundancy of the message, compression and error correction are one and the same mechanism.
Significantly, holotropic techniques can be implemented in software, but some or all are much more efficient when implemented in microcode, and are maximally efficient when implemented directly in hardware. However, even where holotropic techniques are implemented in software or microcode, holotropic memory systems can perform more efficiently in terms of storage, speed, etc. than presently known techniques. At the hardware level, holotropic technology can take full advantage of the unique properties of the latest components, such as, charge couple devices, magnetic-bubble logic, and memory, etc.
The technology described herein is applicable alike to large computers (for example, information storage and retrieval systems), to subsystems (for example, intelligent disk storage devices), or to very small stand-alone machines (for example, battery-driven calculators).